package com.itlong.cloud.commons.chinapay.dao;

import com.itlong.cloud.POJO.PO.PropertyBankCardInfoPO;
import com.itlong.cloud.POJO.VO.operate.ChinaPayWithdrawVO;
import com.itlong.cloud.POJO.VO.operate.OperateTransferAccountVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * <desc>
 * 银联转账操作数据库接口.
 * </desc>
 *
 * @createDate 2018/9/1
 */
@Mapper
@Repository
public interface IChinaPayTransferAccountDao {

    /**
     * <desc>
     *      根据审核编号获取物业所绑定的银行卡信息
     * <desc/>
     *
     * @param cashId 审核编号
     * @return
     * @author Juguang.S
     * @createDate 2018-09-01
     */
    OperateTransferAccountVO getBankCardInfoByCashId(@Param("cashId") String cashId);

    /**
     * <desc>
     *      根据转账ID更新转账信息表的转账状态为转账处理中
     * <desc/>
     *
     * @param cashIdArr 转账ID集合
     * @return
     * @author Juguang.S
     * @createDate 2018-09-04
     */
    void updateTradeStatus(@Param("cashIdArr") String[] cashIdArr,@Param("myUserName") String myUserName);

    /**
     * <desc>
     *      更新
     * </desc>
     * @param
     * @return Integer
     * @author Juguang.S
     * @createDate 2018-09-01
     */
    void update(Map<String,Object> params);

    /**
     * <desc>
     *      获取即将转账的总金额 扣出手续费
     * </desc>
     * @param
     * @return Integer
     * @author Juguang.S
     * @createDate 2018-09-23
     */
    String getTotal(@Param("cashIdArr") String[] cashIdArr);

    /**
     * <desc>
     *      获取银联的手续费
     * </desc>
     * @param
     * @return Integer
     * @author Juguang.S
     * @createDate 2018-09-23
     */
    String getChinaPayHandFee();

}
